package com.jfirer.validator.path.node;

import javax.validation.ElementKind;
import javax.validation.Path.Node;

public class NodeImpl implements Node
{
    private String      name;
    private Integer     index;
    private Object      key;
    private Boolean     inIterable;
    private ElementKind elementKind;
    
    @Override
    public String getName()
    {
        return name;
    }
    
    @Override
    public boolean isInIterable()
    {
        return inIterable;
    }
    
    @Override
    public Integer getIndex()
    {
        return index;
    }
    
    @Override
    public Object getKey()
    {
        return key;
    }
    
    @Override
    public ElementKind getKind()
    {
        return elementKind;
    }
    
    @Override
    public <T extends Node> T as(Class<T> nodeType)
    {
        // TODO Auto-generated method stub
        return null;
    }
    
    public ElementKind getElementKind()
    {
        return elementKind;
    }
    
    public void setElementKind(ElementKind elementKind)
    {
        this.elementKind = elementKind;
    }
    
    public void setName(String name)
    {
        this.name = name;
    }
    
    public void setIndex(Integer index)
    {
        this.index = index;
    }
    
    public void setKey(Object key)
    {
        this.key = key;
    }
    
    public void setInIterable(boolean inIterable)
    {
        this.inIterable = inIterable;
    }
    
}
